namespace ext
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>
	/// A specialized container representing the viewable application area (the browser viewport).  The Viewport renders itself to the document body, and automatically sizes itself to the size of
	/// the browser viewport and manages window resizing. There may only be one Viewport created
	/// in a page. Inner layouts are available by virtue of the fact that all {@link Ext.Panel Panel}s
	/// added to the Viewport, either through its {@link #items}, or through the items, or the {@link #add}
	/// method of any of its child Panels may themselves have a layout.  The Viewport does not provide scrolling, so child Panels within the Viewport should provide
	/// for scrolling if needed using the {@link #autoScroll} config.  An example showing a classic application border layout:  
	/// new Ext.Viewport({
	/// layout: &apos;border&apos;,
	/// items: [{
	/// region: &apos;north&apos;,
	/// html: &apos;&amp;lt;h1 class=&quot;x-panel-header&quot;&gt;Page Title&amp;lt;/h1&gt;&apos;,
	/// autoHeight: true,
	/// border: false,
	/// margins: &apos;0 0 5 0&apos;
	/// }, {
	/// region: &apos;west&apos;,
	/// collapsible: true,
	/// title:...
	/// </summary>
	/// <htmlSummary>
	/// &lt;p&gt;A specialized container representing the viewable application area (the browser viewport).&lt;/p&gt;
	/// &lt;p&gt;The Viewport renders itself to the document body, and automatically sizes itself to the size of
	/// the browser viewport and manages window resizing. There may only be one Viewport created
	/// in a page. Inner layouts are available by virtue of the fact that all {@link Ext.Panel Panel}s
	/// added to the Viewport, either through its {@link #items}, or through the items, or the {@link #add}
	/// method of any of its child Panels may themselves have a layout.&lt;/p&gt;
	/// &lt;p&gt;The Viewport does not provide scrolling, so child Panels within the Viewport should provide
	/// for scrolling if needed using the {@link #autoScroll} config.&lt;/p&gt;
	/// &lt;p&gt;An example showing a classic application border layout:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;
	/// new Ext.Viewport({
	/// layout: &apos;border&apos;,
	/// items: [{
	/// region: &apos;north&apos;,
	/// html: &apos;&amp;lt;h1 class=&quot;x-panel-header&quot;&gt;Page Title&amp;lt;/h1&gt;&apos;,
	/// autoHeight: true,
	/// border: false,
	/// margins: &apos;0 0 5 0&apos;
	/// }, {
	/// region: &apos;west&apos;,
	/// collapsible: true,
	/// title: &apos;Navigation&apos;,
	/// width: 200
	/// // the west region might typically utilize a {@link Ext.tree.TreePanel TreePanel} or a Panel with {@link Ext.layout.AccordionLayout Accordion layout}
	/// }, {
	/// region: &apos;south&apos;,
	/// title: &apos;Title for Panel&apos;,
	/// collapsible: true,
	/// html: &apos;Information goes here&apos;,
	/// split: true,
	/// height: 100,
	/// minHeight: 100
	/// }, {
	/// region: &apos;east&apos;,
	/// title: &apos;Title for the Grid Panel&apos;,
	/// collapsible: true,
	/// split: true,
	/// width: 200,
	/// xtype: &apos;grid&apos;,
	/// // remaining grid configuration not shown ...
	/// // notice that the GridPanel is added directly as the region
	/// // it is not &quot;overnested&quot; inside another Panel
	/// }, {
	/// region: &apos;center&apos;,
	/// xtype: &apos;tabpanel&apos;, // TabPanel itself has no title
	/// items: {
	/// title: &apos;Default Tab&apos;,
	/// html: &apos;The first tab\&apos;s content. Others may be added dynamically&apos;
	/// }
	/// }]
	/// });
	/// &lt;/code&gt;&lt;/pre&gt;
	/// </htmlSummary>
	/// <definedin>src\widgets\Viewport.js</definedin>
	[ScriptName("Viewport")]
	[ScriptNamespace("Ext")]
	[Imported()]
	public partial class Viewport : ext.Container
	{
		
		#region Constructors
		/// <summary>Constructor</summary>
		/// <param name="config">The config object</param>
		public Viewport(ext.Viewport_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		public Viewport()
		{
		}
		#endregion
		
		#region Fields
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("applyTo")]
		public object ApplyTo;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("allowDomMove")]
		public bool AllowDomMove;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("hideParent")]
		public bool HideParent;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("renderTo")]
		public object RenderTo;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("height")]
		public System.Number Height;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("width")]
		public System.Number Width;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("autoHeight")]
		public bool AutoHeight;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("autoWidth")]
		public bool AutoWidth;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("deferHeight")]
		public bool DeferHeight;
		
		/// <summary>@hide</summary>
		/// <definedin>src\widgets\Viewport.js</definedin>
		[ScriptName("monitorResize")]
		public bool MonitorResize;
		#endregion
	}
}
